As digital sources of information have become increasingly important in the business, academic and personal computing arenas, improved mechanisms for quickly and efficiently implementing new functionality in the applications that manage and present such information have also become increasingly important.
As will be appreciated, repositories can become large, and it can be difficult to identify changes made to such metadata in a meaningful manner and to use that information for improving business agility. Upgrades tend to be expensive and time consuming, requiring large, experienced teams to implement upgrades. Upgrading to new releases typically involves extensive testing of the entire application suite (as new releases have modifications and additions to metadata objects in addition to customers' modifications to original metadata objects). As a result, organizations often have a tendency to avoid upgrading their present systems to new releases, as a result of the difficulties presented by existing upgrade processes, which are cumbersome and resource-intensive. Often, then, such organizations will avoid upgrading their systems, sometimes for years, and thus fail to benefit from the advances they might enjoy by employing such upgraded systems.